elk配置指南

简介

  本文的目的是搭建一个具备elk日志监控的springmvc程序,代码里面将日志输出到redis里面,然后logstash配置input和output,将日志信息从redis里面取出来,然后放入Elasticsearch,然后启动kinaba,配置索引对应关系即可。最终可以通过kinaba可以实时看到日志,利于分析查询。

搭建一个springmvc的程序

  这里我直接给出仓库地址:
点我一下就到了
  这里要注意下。我们把日志输出到了对应的redis里面。

<appender name="LOGSTASH" class="com.cwbase.logback.RedisAppender">
    <source>SpringELK</source>
    <type>dev-type</type>
    <tags>dev</tags>
    <host>127.0.0.1</host>
    <port>6379</port>
    <key>logstash</key>
</appender>

软件下载

  1,下载6.3.0版本的kinaba,Elasticsearch,logstash。
  2,下载redis。

主要配置修改

  1.Elasticsearch 在其配置文件Elasticsearch.yml

http.cors.enabled: true
http.cors.allow-origin: "*"

  2.logstash 新建配置文件。



input {
    redis {
        data_type => "list"
        key => "logstash"
        host => "127.0.0.1"  #redis-server
        port => 6379
        batch_count => "1"
        threads => 5
    }
}

output {
  elasticsearch {
    hosts => ["http://localhost:9200"]
   index => "%{logstash}-%{+YYYY.MM.dd}"
    #user => "elastic"
    #password => "changeme"
  }
}

启动顺序

  1.启动redis。
  2.在tomcat里面启动spring mvc代码
  3.启动Elasticsearch。浏览器进入 http://localhost:9200/
  4.进入到logstash的bin 目录,输入logstash -f ..config/redis.conf来根据配置文件来启动logstash。浏览器进入http://localhost:9600/
  5.直接启动kinaba 浏览器进入http://localhost:5601,然后配置es的索引,最终在discover里面成功看到了我们的日志。